package user;

import book.BookList;
import operation.IOPeration;

public abstract class User {

    protected String name;  //只能在同一个包或者不同包的子类进行name访问，所以使用protect

    protected IOPeration[] ioPerations;  //定义一个数组，未分配内存

//对User本身来说给一个构造方法
    public User(String name) {
        this.name = name;
    }

    public abstract int menu();  //申明方法没有具体的实现使用abstract，就是一个抽象方法

//申明方法，回到Main里面就可以调用doOperation方法
    public void doOperation(int choice, BookList bookList) {

//调用数组的某一个下标，再调用new对象里面的work方法，
//然后把bookList放进去，Main调用doOperation方法就可以传入bookList
        ioPerations[choice].work(bookList);
    }

}